package productosYPresentaciones;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;
/**
 * Clase test de Producto.
 * @author Stefania Chiniewicz.
 *
 */
public class ProductoTest {

	Producto prod;
	Presentacion presentacion;
	
	@Before
	public void setUp() throws Exception {
		this.presentacion= new Presentacion("1234567", "kilo", 5.50f,5.50f, "al fondo a la derecha",5.50f);
		this.prod= new Producto( "Arroz", "Arroz blanco", "Gallo",
	"Alimento", presentacion);
	}

	@Test
	public void testGetNombre() {
		assertEquals("Arroz",prod.getNombre());
	}
	
	@Test
	public void testGetDescripcion() {
		assertEquals("Arroz blanco",prod.getDescripcion());
	}
	@Test
	public void testGetMarca() {
		assertEquals("Gallo",prod.getMarca());
	}
	@Test
	public void testGetTipo() {
		assertEquals("Alimento",prod.getTipo());
	}
	@Test
	public void testObtenerCodigo() {
		assertEquals("1234567",prod.obtenerCodigo());
	}
	@Test
	public void testUnidadDeMedida() {
		assertEquals("kilo",prod.unidadMedida());
	}
	@Test
	public void testUbicacion() {
		assertEquals("al fondo a la derecha",prod.ubicacion());
	}
	@Test
	public void testPrecioUnitarioCompra() {
		assertEquals(5.50f,prod.precioUnitCompra(),0.002f);
	}
	@Test
	public void testPrecioUnitarioVenta() {
		assertEquals(5.50f,prod.precioUnitVenta(),0.002f);
	}
	@Test
	public void testPrecioActual() {

		assertEquals(5.50f, prod.precioActual(), 0.002f);
	}
	@Test
	public void testGetStockMin(){
		presentacion.setStockMin(10);
		assertEquals(10,prod.stockMin());
	}
	@Test
	public void testGetStockCritico(){
		presentacion.setStockCritico(5);
		assertEquals(5,prod.stockCritico());
	}

}